home *** CD-ROM | disk | FTP | other *** search
/ Scene Storm / Scene Storm - Volume 1.iso / coding / c / scanner / scanner.h < prev    next >
C/C++ Source or Header  |  1996-01-23  |  4KB  |  129 lines

  1. /* scanner.h */
  2.  
  3. #define FOUND        0x8000
  4. #define NUMBER(number)    ((number) & 0x7FFF)
  5.  
  6. #define BITMAP_KIND        0
  7. #define BOOLINFO_KIND        1
  8. #define BORDER_KIND        2
  9. #define GADGET_KIND        3
  10. #define IMAGE_KIND        4
  11. #define INTUIMESSAGE_KIND    5
  12. #define INTUITEXT_KIND        6
  13. #define KEYMAP_KIND        7
  14. #define LAYER_KIND        8
  15. #define MENU_KIND        9
  16. #define MSGPORT_KIND        10
  17. #define PROPINFO_KIND        11
  18. #define RASTPORT_KIND        12
  19. #define REQUESTER_KIND        13
  20. #define SCREEN_KIND        14
  21. #define STRINGINFO_KIND        15
  22. #define TEXTATTR_KIND        16
  23. #define TEXTFONT_KIND        17
  24. #define WINDOW_KIND        18
  25. #define MAXSTRUCTURE        19
  26.  
  27. #define BitMapNumber(item)    structNumber((APTR)item, BITMAP_KIND)
  28. #define BoolInfoNumber(item)    structNumber((APTR)item, BOOLINFO_KIND)
  29. #define BorderNumber(item)    structNumber((APTR)item, BORDER_KIND)
  30. #define GadgetNumber(item)    structNumber((APTR)item, GADGET_KIND)
  31. #define ImageNumber(item)    structNumber((APTR)item, IMAGE_KIND)
  32. #define IntuiMessageNumber(item) structNumber((APTR)item, INTUIMESSAGE_KIND)
  33. #define IntuiTextNumber(item)    structNumber((APTR)item, INTUITEXT_KIND)
  34. #define KeyMapNumber(item)    structNumber((APTR)item, KEYMAP_KIND)
  35. #define LayerNumber(item)    structNumber((APTR)item, LAYER_KIND)
  36. #define MenuNumber(item)    structNumber((APTR)item, MENU_KIND)
  37. #define MsgPortNumber(item)    structNumber((APTR)item, MSGPORT_KIND)
  38. #define PropInfoNumber(item)    structNumber((APTR)item, PROPINFO_KIND)
  39. #define RastPortNumber(item)    structNumber((APTR)item, RASTPORT_KIND)
  40. #define RequesterNumber(item)    structNumber((APTR)item, REQUESTER_KIND)
  41. #define ScreenNumber(item)    structNumber((APTR)item, SCREEN_KIND)
  42. #define StringInfoNumber(item)    structNumber((APTR)item, STRINGINFO_KIND)
  43. #define TextAttrNumber(item)    structNumber((APTR)item, TEXTATTR_KIND)
  44. #define TextFontNumber(item)    structNumber((APTR)item, TEXTFONT_KIND)
  45. #define WindowNumber(item)    structNumber((APTR)item, WINDOW_KIND)
  46.  
  47. #define BitMapName(number)    structName(number, BITMAP_KIND)
  48. #define BoolInfoName(number)    structName(number, BOOLINFO_KIND)
  49. #define BorderName(number)    structName(number, BORDER_KIND)
  50. #define GadgetName(number)    structName(number, GADGET_KIND)
  51. #define ImageName(number)    structName(number, IMAGE_KIND)
  52. #define IntuiMessageName(number) structName(number, INTUIMESSAGE_KIND)
  53. #define IntuiTextName(number)    structName(number, INTUITEXT_KIND)
  54. #define KeyMapName(number)    structName(number, KEYMAP_KIND)
  55. #define LayerName(number)    structName(number, LAYER_KIND)
  56. #define MenuName(number)    structName(number, MENU_KIND)
  57. #define MsgPortName(number)    structName(number, MSGPORT_KIND)
  58. #define PropInfoName(number)    structName(number, PROPINFO_KIND)
  59. #define RastPortName(number)    structName(number, RASTPORT_KIND)
  60. #define RequesterName(number)    structName(number, REQUESTER_KIND)
  61. #define ScreenName(number)    structName(number, SCREEN_KIND)
  62. #define StringInfoName(number)    structName(number, STRINGINFO_KIND)
  63. #define TextAttrName(number)    structName(number, TEXTATTR_KIND)
  64. #define TextFontName(number)    structName(number, TEXTFONT_KIND)
  65. #define WindowName(number)    structName(number, WINDOW_KIND)
  66.  
  67. struct structList
  68. {
  69.   struct structList *next;
  70.   APTR structure;
  71.   WORD number;
  72. };
  73.  
  74. extern void
  75. EraseStructList(void),
  76. ListBitMaps(void),
  77. ListBoolInfos(void),
  78. ListBorders(void),
  79. ListGadgets(void),
  80. ListImages(void),
  81. ListIntuiMessages(void),
  82. ListIntuiTexts(void),
  83. ListKeyMaps(void),
  84. ListLayers(void),
  85. ListMenus(void),
  86. ListMsgPorts(void),
  87. ListPropInfos(void),
  88. ListRastPorts(void),
  89. ListRequesters(void),
  90. ListScreens(void),
  91. ListStringInfos(void),
  92. ListTextAttrs(void),
  93. ListTextFonts(void),
  94. ListWindows(void),
  95. main(int, BYTE **),
  96. PrintBytes(UBYTE *, UBYTE *, UBYTE *, UBYTE *, WORD, WORD),
  97. PrintWords(UBYTE *, UBYTE *, UBYTE *, UWORD *, UBYTE *, WORD, WORD),
  98. ScanBitMaps(struct BitMap *),
  99. ScanBoolInfos(struct BoolInfo *),
  100. ScanBorders(struct Border *),
  101. ScanGadgets(struct Gadget *),
  102. ScanImages(struct Image *),
  103. ScanIntuiMessages(struct IntuiMessage *),
  104. ScanIntuiTexts(struct IntuiText *),
  105. ScanKeyMaps(struct KeyMap *),
  106. ScanLayers(struct Layer *),
  107. ScanMenus(struct Menu *),
  108. ScanMsgPorts(struct MsgPort *),
  109. ScanPropInfos(struct PropInfo *),
  110. ScanRastPorts(struct RastPort *),
  111. ScanRequesters(struct Requester *),
  112. ScanScreens(struct Screen *),
  113. ScanStringInfos(struct StringInfo *),
  114. ScanTextAttrs(struct TextAttr *),
  115. ScanTextFonts(struct TextFont *),
  116. ScanWindows(struct Window *);
  117.  
  118. extern UBYTE
  119. *APTRName(UBYTE *),
  120. *MemoryName(APTR),
  121. *structName(WORD, WORD),
  122. *TitleName(UBYTE *);
  123.  
  124. extern BYTE
  125. Fresh(WORD);
  126.  
  127. extern WORD
  128. structNumber(APTR, WORD);
  129.